import { defineConfig } from "vite"
import vueJS from "@vitejs/plugin-vue"
import { fileURLToPath, URL } from "node:url"
import viteCompression from "vite-plugin-compression"

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vueJS(),
    // viteCompression({
    //   filter: /\.(js|css|json|txt|html|ico|svg|png|jpg|jpeg|gif)(\?.*)?$/i,
    //   ext: "gz", // 缩源后的文件的后缀名
    //   threshold: 512, // 原文件大小的压缩临界值(大于此值才进行压缩)
    //   algorithm: "gzip",  // 压缩算法
    //   deleteOriginFile: true, // 压缩后是否删除压缩源文件
    // }),
  ],
  server: {
    port: 6666, //启动端口
    open: true, //启动后是否自动打开浏览器
    cors: true, //是否允许跨域
    // proxy: {
    // '/api': {
    //   target: 'http://localhost:6666',
    //   changeOrigin: true,
    //   rewrite: (path) => path.replace(/^\/api/, '')
    // }
    // }
  },
  css: {
    preprocessorOptions: {
      less: {
        additionalData: "@import '@/assets/common.less';",
      },
    },
  },
  build: {
    sourcemap: false, //大大减少打包后的体积
    cssMinify: true, //压缩css
    target: "es2015", //解决IOS13及以下的白屏兼容性问题
  },
  resolve: {
    alias: {
      "@": fileURLToPath(new URL("./src", import.meta.url)), //全局路径别名
    },
  },
})
